package request

// GetAddressListReq 获取地址列表请求（通常只需 user_id，可从上下文获取，此处留空）
type GetAddressListReq struct{}

// AddAddressReq 添加地址请求
type AddAddressReq struct {
	UserID        uint64 `json:"userId" binding:"required"`
	Province      string `json:"province" binding:"required"`
	City          string `json:"city" binding:"required"`
	District      string `json:"district" binding:"required"`
	Address       string `json:"address" binding:"required"`
	ReceiverName  string `json:"receiverName" binding:"required"`
	ReceiverPhone string `json:"receiverPhone" binding:"required,len=11"`
	IsDefault     bool   `json:"isDefault"`
}

// UpdateAddressReq 更新地址请求
type UpdateAddressReq struct {
	AddressId     uint64 `json:"addressId" binding:"required"`
	UserID        uint64 `json:"userId" binding:"required"`
	Province      string `json:"province"`
	City          string `json:"city"`
	District      string `json:"district"`
	Address       string `json:"address"`
	ReceiverName  string `json:"receiverName"`
	ReceiverPhone string `json:"receiverPhone"`
}

// DeleteAddressReq 删除地址请求
type DeleteAddressReq struct {
	AddressId uint64 `json:"addressId" binding:"required"`
	UserID    uint64 `json:"userId" binding:"required"`
}

// SetDefaultAddressReq 设置默认地址请求
type SetDefaultAddressReq struct {
	AddressId uint64 `json:"addressId" binding:"required"`
	UserID    uint64 `json:"userId" binding:"required"`
}
